
using Youz.Common.DBUtility;
using Youz.CreditRepay.Entity;
using System;
using System.Data;
using System.Data.SqlClient;
using System.Text;

namespace Youz.CreditRepay.DAL
{
    /// <summary>
    /// Sys_Bank Data Class
    /// </summary>
    public partial class Sys_BankDAL : BaseDAL
    {
		private DbHelperSQL DbHelperSQL = new DbHelperSQL();
        public string TableName = "Sys_Bank";

        public Sys_BankDAL()
        {}

        #region  成员方法
        /// <summary>
        ///  新增一条数据
        /// </summary>
        public bool Add(Sys_Bank model)
        {
            StringBuilder strSql = new StringBuilder();
			
            strSql.Append("insert into [Sys_Bank](");
            strSql.Append("[Code],[Name],[NameAbbr],[Type],[Sort],[Limit],[Color],[CreatedOn],[ModifiedOn]");
            strSql.Append(") values (");
            strSql.Append("@Code,@Name,@NameAbbr,@Type,@Sort,@Limit,@Color,@CreatedOn,@ModifiedOn");
            strSql.Append(")");
			
            SqlParameter[] parameters = {
                  
                    new SqlParameter("@Code", model.Code),
                    new SqlParameter("@Name", model.Name),
                    new SqlParameter("@NameAbbr", model.NameAbbr),
                    new SqlParameter("@Type", model.Type),
                    new SqlParameter("@Sort", model.Sort),
                    new SqlParameter("@Limit", model.Limit),
                    new SqlParameter("@Color", model.Color),
                    new SqlParameter("@CreatedOn", DateTime.Now),
                    new SqlParameter("@ModifiedOn", DateTime.Now)
            };

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
            if (rows > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        /// <summary>
        ///  保存一条数据
        /// </summary>
        public bool Update(Sys_Bank model)
        {
            StringBuilder strSql = new StringBuilder();
			
            strSql.Append("update [Sys_Bank] set ");
            strSql.Append("[Code]=@Code,[Name]=@Name,[NameAbbr]=@NameAbbr,[Type]=@Type,[Sort]=@Sort,[Limit]=@Limit,[Color]=@Color,[ModifiedOn]=@ModifiedOn");
            strSql.Append(" where [ID]=@ID");
			
            SqlParameter[] parameters = {
                  
                    new SqlParameter("@ID", model.ID),
                    new SqlParameter("@Code", model.Code),
                    new SqlParameter("@Name", model.Name),
                    new SqlParameter("@NameAbbr", model.NameAbbr),
                    new SqlParameter("@Type", model.Type),
                    new SqlParameter("@Sort", model.Sort),
                    new SqlParameter("@Limit", model.Limit),
                    new SqlParameter("@Color", model.Color),
                    new SqlParameter("@ModifiedOn", DateTime.Now)
            };

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
            if (rows > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        /// <summary>
        /// 删除一条数据
        ///</summary>
        public bool Delete(Int32 ID)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("delete from [Sys_Bank] ");
            strSql.Append(" where [ID]=@ID");
			
            SqlParameter[] parameters = {
			
                new SqlParameter("@ID", ID)             
              
            };

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
            if (rows > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Sys_Bank Get(Int32 ID)
        {
            StringBuilder strSql = new StringBuilder();
			
            strSql.Append("select  top 1 * from [Sys_Bank] ");
            strSql.Append(" where [ID]=@ID");
			
            SqlParameter[] parameters = {
			
                new SqlParameter("ID", ID)             
              
            };

            DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
            if (ds.Tables[0].Rows.Count > 0)
            {
                return Get(ds.Tables[0].Rows[0]);
            }
            else
            {
                return null;
            }
        }

		/// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Sys_Bank Get(DataRow row)
        {
            if (row == null) return null;

            Sys_Bank model = new Sys_Bank();
	
            
            if (row["ID"] != DBNull.Value)
            {
                model.ID = (Int32)row["ID"];
            }      
            
            if (row["Code"] != DBNull.Value)
            {
                model.Code = (String)row["Code"];
            }      
            
            if (row["Name"] != DBNull.Value)
            {
                model.Name = (String)row["Name"];
            }      
            
            if (row["NameAbbr"] != DBNull.Value)
            {
                model.NameAbbr = (String)row["NameAbbr"];
            }      
            
            if (row["Type"] != DBNull.Value)
            {
                model.Type = (Int32)row["Type"];
            }      
            
            if (row["Sort"] != DBNull.Value)
            {
                model.Sort = (Int32)row["Sort"];
            }      
            
            if (row["Limit"] != DBNull.Value)
            {
                model.Limit = (Decimal)row["Limit"];
            }

            if (row["Color"] != DBNull.Value)
            {
                model.Color = (String)row["Color"];
            }

            if (row["CreatedOn"] != DBNull.Value)
            {
                model.CreatedOn = (DateTime)row["CreatedOn"];
            }      
            
            if (row["ModifiedOn"] != DBNull.Value)
            {
                model.ModifiedOn = (DateTime)row["ModifiedOn"];
            }      
            

            return model;
        }

        /// <summary>
        /// 获得数据列表
        /// </summary>
        public DataSet Gets(string sqlWhere)
        {
            StringBuilder strSql = new StringBuilder();
			
            strSql.Append("select * from [Sys_Bank] ");
            if (sqlWhere.Trim() != "")
            {
                strSql.Append(" where " + sqlWhere);
            }
            
            return DbHelperSQL.Query(strSql.ToString());
        }

        /// <summary>
        /// 获得前几行数据
        /// </summary>
        public DataSet Gets(int Top, string sqlWhere, string filedOrder)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select ");
            if (Top > 0)
            {
                strSql.Append(" top " + Top.ToString());
            }
            strSql.Append(" *  FROM [Sys_Bank] ");
			
            if (sqlWhere.Trim() != "")
            {
                strSql.Append(" where " + sqlWhere);
            }
            if(filedOrder.Trim() != "")
            {
                strSql.Append(" order by " + filedOrder);
            }
			
            return DbHelperSQL.Query(strSql.ToString());
        }

        /// <summary>
        /// 获取记录总数
        /// </summary>
        public int GetRecordCount(string sqlWhere)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select count(1) FROM [Sys_Bank] ");
            if (sqlWhere.Trim() != "")
            {
                strSql.Append(" where " + sqlWhere);
            }
            object obj = DbHelperSQL.GetSingle(strSql.ToString());
            if (obj == null)
            {
                return 0;
            }
            else
            {
                return Convert.ToInt32(obj);
            }
        }

        /// <summary>
        /// 获得数据列表分页
        /// </summary>
        public DataTable Gets(string sqlWhere, int pageindex, int pagesize, out int total, params SqlParameter[] cmdParms)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append(" SELECT * FROM [Sys_Bank]  ");
            if (sqlWhere.Trim() != "")
            {
                strSql.Append(" where " + sqlWhere);
            }

            int count = 0;
            DataTable dt = DbHelperSQL.GetPager(pageindex, pagesize, "" + strSql + "", "order by ID desc ", out count, cmdParms);
            total = count;
            return dt;
        }
      #endregion  成员方法
    }
}


  